应用实践|Apache Doris 助力网易严选打造精细化运营 DMP 标签系统
编者荐语:
精细化运营是互联网长久生存的必要方式,出色的数据分析能力则是精细化运营的一把利刃。本文将由网易严选分享典型的分析系统: DMP 标签系统的建设和 Apache Doris 在其中的应用实践。
以下文章来源于DataFunTalk ,作者刘晓东
导读:如果说互联网的上半场是粗狂运营,那么在下半场,精细化运营将是长久的主题,有数据分析能力才能让用户得到更好的体验。当下比较典型的分析方式是构建用户标签系统,本文将由网易严选分享 DMP 标签系统的建设以及 Apache Doris 在其中的应用实践。
作者|刘晓东 网易严选资深开发工程师
如果说互联网的上半场是粗狂运营,因为有流量红利不需要考虑细节。那么在下半场,精细化运营将是长久的主题,有数据分析能力才能让用户得到更好的体验。当下比较典型的分析方式是构建用户标签系统,从而精准地生成用户画像,提升用户体验。今天分享的主题是网易严选 DMP 标签系统建设实践,主要围绕下面五点展开:
平台总览 标签生产 :标签圈选&生产链路 标签存储:存储方式&存储架构演进 高性能查询 未来规划
平台总览
DMP 作为网易严选的数据中台,向下连接数据,向上赋能业务,承担着非常重要的基石角色。
自营平台的 APP、小程序、PC 端等各端的业务日志 网易集团内部共建的一些基础数据 京东、淘宝、抖音等第三方渠道店铺的数据
标签:对于实体(用户、设备、手机号等)特征的描述,是一种面向业务的数据组织形式,比如使用:年龄段、地址、偏好类目等对用户实体进行刻画。 人群圈选:通过条件组合从全体用户中圈选出一部分用户,具体就是指定一组用户标签和其对应的标签值,得到符合条件的用户人群。 画像分析:对于人群圈选结果,查看该人群的行为情况、标签分布。例如查看【城市为杭州,且性别为女性】的用户在严选 APP 上的行为路径、消费模型等。
分组判断:判读用户是否在指定的一个或多个分组,资源投放、触点营销等场景使用较多。 结果集拉取:拉取指定的人群数据到业务方系统中,进行定制化开发。 画像分析:分析特定人群的行为数据,消费模型等,进行更精细的运营。
首先定义标签和人群圈选的规则; 定义出描述业务的 DSL 之后,便可以将任务提交到 Spark 进行计算; 计算完成之后,将计算结果存储到 Hive 和 Doris; 之后业务方便可以根据实际业务需求从 Hive 或 Doris 中查询使用数据。
DMP 平台整体分为计算存储层、调度层、服务层、和元数据管理四大模块。
所有的标签元信息存储在源数据表中;调度层对业务的整个流程进行任务调度:数据处理、聚合转化为基础标签,基础标签和源表中的数据通过 DSL 规则转化为可用于数据查询的 SQL 语义,由调度层将任务调度到计算存储层的 Spark 进行计算,并将计算结果存储到 Hive 和 Doris 中。服务层由标签服务、实体分组服务、基础标签数据服务、画像分析服务四部分组成。
标签需求:在此阶段,运营提出标签的需求和价值预期,产品评估需求合理性以及紧迫性。 排期生产:此阶段需要数据开发梳理数据,从 ods 到 dwd 到 dm 层整个链路,根据数据建立模型,同时数据开发需要做好质量监控。 人群圈选:标签生产出来之后进行应用,圈选出标签对应的人群。 精准营销:对圈选出来的人群进行精准化营销。 效果评估:最后产品、数据开发和运营对标签使用率、使用效果进行效果评估来决定后续对标签进行改进或降级。
总的来说,就是以业务增长为目标,围绕标签的生命周期,投入合理的资源,最大化运营效果。
标签生产
最下层是 ods 层,包括用户登录日志、埋点记录日志、交易数据以及各种数据库的 Binlog 数据。 对 ods 层处理后的数据到达 dwd 明细层,包括用户登录表、用户活动表、订单信息表等。 dwd 层数据聚合后到 dm 层,标签全部基于 dm 层数据实现。
标签存储
下面介绍一下我们在标签存储方面的实践。
支持高性能查询,以应对大规模 C端流量 支持 SQL,便于应对数据分析场景 支持数据更新机制 可存储大数据量 支持扩展函数,以便处理自定义数据结构 和大数据生态结合紧密
存储引擎过多。 双写有数据质量隐患,可能一方成功一方失败,导致数据不一致。 项目复杂,可维护性较差。
高性能查询
第一部分为静态人群包,提前进行预计算,存入 Redis 中(Key 为实体的 ID,Value 为结果集 ID),采用 Lua 脚本进行批量判断,提升性能; 第二部分为实时行为人群,需要从上下文、API 和 Apache Doris 中提取数据进行规则判断。性能提升方案包括,异步化查询、快速短路、查询语句优化、控制 Join表数量等。
在点查和少量表的联合查询性能 QPS 超过万级,RT99<50MS。 水平扩展能力很强,运维成本相对比较低。 离线数据和实时数据相统一,降低标签模型复杂度。
未来规划
建立丰富准确的标签评价体系 提升标签质量和产出速度 提升标签覆盖率
建立丰富的用户分析模型 从使用频次和用户价值两个方面提升用户洞察模型评价体系 建立通用化画像分析能力,辅助运营智能化决策
资料下载
关注「SelectDB」,后台回复【网易严选】获取本次演讲 PPT 资料!加入社区
最后,欢迎更多的开源技术爱好者加入 Apache Doris 社区,携手成长,共建社区生态。
相关链接:
SelectDB 官方网站:
https://selectdb.com
Apache Doris 官方网站:
http://doris.apache.org
Apache Doris Github:
https://github.com/apache/doris
Apache Doris 开发者邮件组:
dev@doris.apache.org